fb22b674bd8386b5adf5fdf96a4d7336ce0ce993,main/java/PowerPaint/src/com/kreative/paint/io/CKPaintSerializer.java,CKPaintSerializer,serializeObject,#Object#DataOutputStream#,55

Before Change


		}
		else if (o instanceof Tile) {
			Tile v = (Tile)o;
			stream.writeInt(v.getX());
			stream.writeInt(v.getY());
			stream.writeInt(v.getWidth());
			stream.writeInt(v.getHeight());
			stream.writeInt(BI_TYPE_INT_ARGB);

After Change


			int height = v.getHeight();
			int matte = v.getMatte();
			stream.writeInt(x);
			stream.writeInt(y);
			stream.writeInt(width);
			stream.writeInt(height);
			stream.writeInt(matte);
			int[] rgb = new int[width * height];
			v.getRGB(x, y, width, height, rgb, 0, width);
			ByteArrayOutputStream bos = new ByteArrayOutputStream();
			DeflaterOutputStream dos = new DeflaterOutputStream(bos);
			for (int p : rgb) dos.write((p >> 24) & 0xFF);
			for (int p : rgb) dos.write((p >> 16) & 0xFF);
			for (int p : rgb) dos.write((p >> 8) & 0xFF);
			for (int p : rgb) dos.write(p & 0xFF);
			dos.finish();
			dos.close();
			bos.close();
			byte crgb[] = bos.toByteArray();
			stream.writeInt(crgb.length);
			stream.write(crgb);
		} else if (o instanceof TileSurface) {
			TileSurface v = (TileSurface)o;
			stream.writeInt(v.getX());
			stream.writeInt(v.getY());
			stream.writeInt(v.getTileWidth());
			stream.writeInt(v.getTileHeight());
			stream.writeInt(v.getMatte());